Mobile computing systems such as laptop computers, notebook computers, PDAs (Personal Digital Assistants) and the like are popular. A critical aspect of such systems is that they typically run using battery power when they are not or cannot be connected to an AC power source. As a result, mobile computers typically provide power management capabilities in order to run as long as possible off of battery power.
Various components on computing systems consume power. For example, a video display and memory associated with video display consume power. The display can be a Liquid Crystal Display (LCD) flat-panel display screens incorporating TFT (thin film transistor) technology to control pixels.
Most video displays need to be continually refreshed, typically by a graphics engine on a graphics (display) controller. The display may be refreshed pixel by pixel, with the graphics engine fetching the pixel data from memory. The act of fetching data can consume power on the graphics engine (or controller), the memory subsystem containing the pixel data, communication buses and the display device itself.
If the memory subsystem is a dynamic memory based system, the memory contents may need to be periodically refreshed. As such, the memory can perform a self-refresh operation when the memory is not actively being accessed. Further, it can be valuable to keep the memory in a self-refresh state when the computer system is idle. The display controller, however, can update the pixels of the display on a regular basis which can keep both the memory and the communication bus interface between the display controller and display screen in an active state.
A First-In First-Out (FIFO) buffer can be provided on the memory, or host side of the display controller. The display image data can be loaded into the FIFO from the memory, and the FIFO can then be used to refresh the display. The time between loading the FIFO with new image data can be used as idle time to place the memory into a self-refresh state. This idle time on the host memory bus may be related to the capacity size of the FIFO, the size/resolution of the display and the clock frequency (dotclock) used to refresh the display. For example, an 8 Kbyte to 16 Kbyte FIFO buffer can create from 20 to 60 us of idle time on the memory bus depending on attributes of the display.